/*
 * @Description: 
 * @Author: rendc
 * @Date: 2025-09-02 10:27:48
 * @LastEditors: rendc
 * @LastEditTime: 2025-09-02 11:20:04
 */
package com.briup;

import org.junit.Test;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

/**
 * @program: jdbc-demo
 * @description: jdbc测试类
 * @author: rendc
 * @create: 2025-09-02 10:27
 **/
public class JdbcTest {
  @Test
  public void test1() {
    System.out.println("hello,jdbc");
  }

  @Test
  public void getConnection() {
    // 数据库连接四要素
    // 驱动
    String driverClass = "com.mysql.cj.jdbc.Driver";
    // 数据库地址
    String url = "jdbc:mysql://127.0.0.1:3306/briup";
    // 数据库的用户名
    String username = "briup"; // 用户名
    // 数据库的用户密码
    String password = "briup"; // 密码
    // 创建数据库驱动
    Connection conn = null;
    Statement stmt = null;
    try {
      // 1. 注册驱动
      Class.forName(driverClass);
      // 2. 获取数据库连接对象
      conn = DriverManager.getConnection(url, username, password);
      // 3. 获取数据库操作对象（ Statement 类型或者子类型对象）
      stmt = conn.createStatement();
      // 4. 执行sql语句
      String sql = "select * from s_emp;";
      // 执行查询语句executeQuery
      // 执行 DDLDML语句executeUpdate
      ResultSet rs = stmt.executeQuery(sql);
      // 5. 处理结果集（如果需要的话，一般查询语句必须要处理）
      System.out.println(rs);
    } catch (Exception e) {
      // TODO: handle exception
    } finally {
      // 6. 释放资源
      // 关闭前面打开的资源
      if (stmt != null) {
        try {
          stmt.close();
        } catch (Exception e) {
          // TODO: handle exception
        }
      }
      if (conn != null) {
        try {
          conn.close();
        } catch (Exception e) {
          // TODO: handle exception
        }
      }
    }
  }
}
